package com.fasteat.mall.service;

import com.fasteat.mall.entity.Orderform;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fasteat.mall.entity.vo.OrderformProductVo;
import com.fasteat.mall.entity.vo.NewOrderformVo;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author hy
 * @since 2021-01-19
 */
public interface OrderformService extends IService<Orderform> {

    /**
     * 顾客下单流程
     *
     * @param orderformVo
     * @return
     */
    boolean CustomerBuy(NewOrderformVo orderformVo);

    /**
     * 分类别分用户切割list分页封装对象
     *
     * @param start
     * @param end
     * @param orderformStatus
     * @param userId
     * @return
     */
    List<OrderformProductVo> pageVoIAmAngry(Integer start,
                                            Integer end,
                                            Integer orderformStatus,
                                            String userId);

//    /**
//     * 申请退款
//     *
//     * @param aftersalesDto
//     */
//    void refund(AftersalesDto aftersalesDto);
//
//
//    /**
//     * 申请退货
//     *
//     * @param aftersalesDto
//     */
//    void returnGoods(AftersalesDto aftersalesDto);
//
//
//    /**
//     * 申请换货
//     *
//     * @param aftersalesDto
//     */
//    void exchangeGoods(AftersalesDto aftersalesDto);
//
//    /**
//     * 查看退款申请
//     *
//     * @return
//     */
//    List<AftersalesDto> queryRefund();
//
//    /**
//     * 查看退货申请
//     *
//     * @return
//     */
//    List<AftersalesDto> queryReturnGoods();
//
//    /**
//     * 查看换货申请
//     *
//     * @return
//     */
//    List<AftersalesDto> queryExchangeGoods();
//
//    /**
//     * 退款处理并通知
//     *
//     * @param afterSalesProcessDto
//     * @param result
//     */
//    void processRefund(AfterSalesProcessDto afterSalesProcessDto, Boolean result);
//
//    /**
//     * 退货处理并通知
//     *
//     * @param afterSalesProcessDto
//     * @param result
//     */
//    void processReturn(AfterSalesProcessDto afterSalesProcessDto, Boolean result);
//
//    /**
//     * 换货处理并通知
//     *
//     * @param afterSalesProcessDto
//     * @param result
//     */
//    void processExchange(AfterSalesProcessDto afterSalesProcessDto, Boolean result);
}
